<?php

namespace Modules\Auth\Http\Requests\Admin;

use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rules\Password;

class AuthRequest extends FormRequest
{
    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        switch (true) {
            case $this->routeIs('api.admin.auth.login'):
                // case true:
                return [
                    'username' => ['required', 'string', 'between:4,16'],
                    'password' => [
                        'required', 'string', 'between:6,16',
                        Password::min(6)
                        // ->letters()//使密码至少需要一个字母。
                        // ->numbers()//使密码至少需要一个数字。
                        // ->mixedCase()//使密码至少需要一个大写和一个小写字母。
                        // ->symbols()//使密码至少需要一个符号。
                        // ->uncompromised()//确保密码没有在数据泄露中被泄露。
                    ],
                ];
        }
        return [
            //
        ];
    }

    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }
}
